FIG. 1 is a block diagram illustrating selected elements of communication system 100. Communication system 100 includes transmit/receive pairs 101 and 102. Transmit/receive pairs 101 and 102 only show data transfer in one direction and, therefore, consists of half of each link. Data flow, in the reverse direction of that depicted in FIG. 1, may use another copy of the same hardware, software, and/or firmware. Communication system 100 exemplifies a conventional approach to transporting two or more gigabit Ethernet streams. Gigabit Ethernet streams may be Ethernet streams that comply with the IEEE 802.3z standard, IEEE std. 802.3z-1998, published Sep. 1, 1998 (hereinafter, the gigabit Ethernet standard).
Transmit/receive pair 101 consists of gigabit media independent interface (GMII) 105, transmit physical coding sublayer (PCS) 110, encoder 115, serializer 120, serial link 125, de-serializer 130, framer 135, decoder 140, receive PCS 145, and receive GMII 150. Transmit/receive pair 102 may be implemented with similar elements. GMII 105 is the interface between a media access control (MAC) layer (not shown) and the elements illustrated in FIG. 1. GMII 105 typically provides an eight-bit parallel data path and a control path between the transmit MAC layer and the physical layer for transmit/receive pair 101. GMII 150 provides a similar interface between the physical layer and the MAC layer on the receive side of transmit/receive pair 101.
GMII 105 typically provides octets of data to PCS 110 through an 8-bit parallel data interface. PCS 110 receives the octets of data from GMII 105 and directs encoder 115 to encode the octets of data prior to transmission over serial link 125. Encoder 115 is typically an 8B/10B encoder as specified in the gigabit Ethernet standard. Octets of data are typically encoded into ten-bit data code-groups. 8B/10B encoding schemes are known in the art; accordingly a detailed discussion is not provided herein. PCS 110 may also direct encoder 115 to generate a number of ten-bit special code-groups, which are sometimes combined with the data code-groups. For example, a special code-group called a K28.5 may contain a unique seven-bit sequence called a comma. Commas may be used for framing operations.
PCS 110 also generates combinations of data code-groups and special code-groups known as ordered sets. Ordered sets may be used, for example, to control the running disparity of a stream or to fill the inter-packet gaps (IPGs) of a stream. The IDLE1 ordered set, for example, is typically used to change the running disparity of an Ethernet stream and the IDLE2 ordered set is typically used to fill the IPGs of the Ethernet stream. The encoded data code-groups, special code-groups, and ordered sets are delivered to Serializer 120. Serializer 120 serializes the encoded information and transmits it over serial link 125. Serial link 125 may be a single-mode fiber optic link, a multi-mode fiber optic link, a shielded copper link, or an unshielded copper link.
De-serializer 130 deserializes the received encoded information and framer 135 determines the correct character boundaries for the received encoded information. Framer 135 may use one or more commas (e.g., as contained within the K28.5 code-group) to determine character boundaries. The framed information is then decoded into octets of data and special characters by decoder 140 and checked for synchronization by receive PCS 145. The synchronization process may be used to verify that framer 135 is correctly aligning the received code-group boundaries.
FIG. 1 illustrates that a conventional method for transporting two 1-gigabit Ethernet streams is to use two transmit/receive pairs (e.g., transmit/receive pairs 101 and 102) to transmit two 1-gigabit Ethernet streams over separate physical links (e.g., serial links 125 and 175). As described above, this conventional method for transporting two 1-gigabit Ethernet streams requires separate serializers, de-serializers, and typically separate serial links (separate serial links may not be necessary when wavelength division multiplexing is used) to transport the two 1-gigabit Ethernet streams from one location to another location. Alternatively, transmission channels that are compliant with certain synchronous optical network (SONET) standards (e.g., STS-48/OC-48 channels) may be used to transport the data of two 1-gigabit Ethernet streams if the two 1-gigabit Ethernet streams are mapped into a SONET stream.
Using STS-48/OC-48 channel serial links to transport multiple gigabit Ethernet streams introduces a number of problems. First, mapping gigabit Ethernet streams into a SONET stream requires the hardware overhead of full SONET framers. Full SONET framers, in turn, introduce latencies of at least 250 μs is to the transported streams. Also, additional internetworking hardware is required at both ends of the link to map the Ethernet streams into a SONET stream and to extract the multiple Ethernet streams from the payload section of the received SONET frames.